package com.ruoyi.system.mapper.estate;

import java.util.List;
import java.util.Map;
import com.ruoyi.system.domain.estate.Complaint;

/**
 * 投诉建议Mapper接口
 * 
 * @author ruoyi
 */
public interface ComplaintMapper {
    /**
     * 查询投诉建议
     * 
     * @param complaintId 投诉建议主键
     * @return 投诉建议
     */
    public Complaint selectComplaintById(Long complaintId);

    /**
     * 查询投诉建议列表
     * 
     * @param complaint 投诉建议
     * @return 投诉建议集合
     */
    public List<Complaint> selectComplaintList(Complaint complaint);

    /**
     * 新增投诉建议
     * 
     * @param complaint 投诉建议
     * @return 结果
     */
    public int insertComplaint(Complaint complaint);

    /**
     * 修改投诉建议
     * 
     * @param complaint 投诉建议
     * @return 结果
     */
    public int updateComplaint(Complaint complaint);

    /**
     * 删除投诉建议
     * 
     * @param complaintId 投诉建议主键
     * @return 结果
     */
    public int deleteComplaintById(Long complaintId);

    /**
     * 批量删除投诉建议
     * 
     * @param complaintIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteComplaintByIds(Long[] complaintIds);
    
    /**
     * 查询投诉建议总数
     * 
     * @param complaint 投诉建议
     * @return 结果
     */
    public int selectCount(Complaint complaint);
    
    /**
     * 查询近期投诉建议趋势
     * 
     * @param days 天数
     * @return 投诉建议趋势数据
     */
    public List<Map<String, Object>> selectTrend(int days);
} 